#pragma once

#ifdef __QT5_TARGET

#include <QtCore/QDateTime>
#include <QtCore/QLocale>
#include <QtCore/QPair>

#else

#include <QLocale>
#include <QPair>
#include <QDateTime>

#endif

#include "ScheduleTableModel.h"
#include "korlapadmin_model.h"

class CalendarModel
{

	public slots:
		//goNextWeek();
		//goPreviousWeek();
		//jumpWeek(const QDate& date);
public:
	CalendarModel(void);
	ScheduleTableModel* getThisWeekModel();
	CalendarModel(korlapAdmin_model* model, QLocale * locale);
	QPair<QDateTime*,QDateTime*>* getCurrentWeekRange();
	~CalendarModel(void);
private:
	korlapAdmin_model* model;
	int listCount;
	ScheduleTableModel* scheduler;
	QLocale* locale;
	ScheduleTableModel* calendarCache;
	static const int maxCache = 2;
	static const int maxList = 8;
};
